﻿using System.Data;
using System.Runtime.Serialization;

namespace Widgetsphere.Core.DataAccess
{
	public partial interface ISubDomain
	{
		string ConnectionString { get; }
		bool DisableAutomaticRetrieves { get; set; }
		string Identifier { get; }
		bool IsDirty { get; }
		string Modifier { get; set; }
		int TimeOut { get; set; }

		void AddSelectCommand(SelectCommand command);
		void ClearSelectCommands();
		void EnsureParentRowsExist();
		void GetObjectData(SerializationInfo info, StreamingContext context);
		DataSet Intersection(DataSet dataset, string key);
		void Persist();
		SubDomainBase RunRulesFromWebService();
		void RunSelectCommands();
		void SaveToFile(string file);
		void SaveToFile(string file, bool overwrite);
		DataSet Subtract(DataSet dataset, string key);
		DataSet Union(DataSet dataset, string key);
	}
}
